#ifndef WIDGET_H
#define WIDGET_H

#include "myplayer.h"
#include <QWidget>
#include<QGraphicsPixmapItem>//图形元素
#include<QGraphicsView>//视图
#include<QGraphicsScene>//场景
#include<QList>//链表
#include"enemyfalling.h"

QT_BEGIN_NAMESPACE
namespace Ui {
class Widget;
}
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();

    //篮子移动函数
    void playermove();

    //按键事件
    void keyPressEvent(QKeyEvent*event);
    void keyReleaseEvent(QKeyEvent*event);

    //掉落物生成函数
    void Createfalling();


private:
    Ui::Widget *ui;

    QGraphicsView mGameView;//游戏视图
    QGraphicsScene mGameScene;//场景
    QGraphicsScene mStartScene;//开始场景

    //场景元素
    QGraphicsPixmapItem mbackground;//背景
    myplayer mmyplayer;

    //定时器
    QTimer*mplayerMoveTimer;//篮子移动定时器
    QTimer*mEnemyfallingCreateTimer;//掉落物创建定时器
    QTimer*mEnemyfallingMoveTimer;//掉落物移动定时器

    //容器
    QList<int> mKeyList;//按键组合
    QList<Enemyfalling*> mEnemyfallingList;//掉落物容器


};
#endif // WIDGET_H
